package cn.terminus.web.customer.custominfo.form;

import cn.terminus.result.common.vo.TerminusBasePageVo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 接收查询条件Form
 *
 * @author makejava
 * @since 2021-07-08 11:18:49
 */
@ApiModel("客户分页查询条件")
@Data
public class CustomInfoQueryForm extends TerminusBasePageVo {

    /**
     * 招商阶段
     */

    @ApiModelProperty(name = "cboCustomStage", value = "招商阶段", required = true)
    private String cboCustomStage;

    /**
     * 渠道来源
     */

    @ApiModelProperty(name = "cboChannelSource", value = "渠道来源", required = false)
    private String cboChannelSource;

    /**
     * 最新跟进开始时间
     */
    @ApiModelProperty(name = "followStartTime", value = "最新跟进开始时间", required = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date followStartTime;

    /**
     * 最新跟进结束时间
     */
    @ApiModelProperty(name = "followEndTime", value = "最新跟进结束时间", required = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date followEndTime;


    /**
     * 开始时间
     */
    @ApiModelProperty(value = "创建开始时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date startTime;

    /**
     * 结束时间
     */
    @ApiModelProperty(value = "创建结束时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date endTime;

    /**
     * 客户名称或联系人或电话
     */
    @ApiModelProperty(name = "cboCustomName", value = "客户名称或联系人或电话", required = true)
    private String cboCustomNameOrContactsOrPhone;


    /**
     * 归属人
     */
    @ApiModelProperty(name = "cboCustomAscription", value = "归属人姓名", required = false)
    private String cboCustomAscriptionName;


}
